package com.dycx.system.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.dycx.system.dto.AdminDTO;
import com.dycx.system.entity.AdminDO;
import com.dycx.system.vo.AdminVO;
import com.dycx.system.vo.RoleVO;

import java.util.List;

public interface AdminService extends IService<AdminDO> {

    /**
     * 删除
     */
    Boolean delete(int id);

    /**
     * 重置密码
     */
    String restPassword(int adminId);

    /**
     * 添加
     */
    String insert(AdminDTO adminDto);

    /**
     * 更新
     */
    Boolean update(AdminDTO adminDto);

    /**
     * 更新状态
     */
    Boolean updateStatus(AdminDTO adminDto);

    /**
     * 根据主键 id 查询
     */
    AdminVO getInfoById(Integer id);

    /**
     * 获取所有用户
     */
    List<AdminVO> getList(Integer status);

    /**
     * 根据登录名查询
     */
    AdminDO getInfoByUsername(String username);

    /**
     * 分页查询
     */
    Page<AdminVO> getPage(AdminDTO adminDTO);

    List<RoleVO> getAdminRoleList(Integer adminId);

    Boolean updatePassword(AdminDTO adminDto);


}
